package emas.client;


import java.sql.Timestamp;
import java.util.ArrayList;

import com.google.gwt.user.client.rpc.AsyncCallback;

import emas.shared.Location;
import emas.shared.SensorData;

public interface RetrieveDataServiceAsync {

	void getLocations(AsyncCallback<ArrayList<Location>> callback);

	void addLocation(Location location, AsyncCallback<Void> callback);

	void removeLocation(Location location, AsyncCallback<Void> callback);

	void updateLocation(Location location, AsyncCallback<Void> callback);

	void authenticateUser(String username, String password,
			AsyncCallback<Boolean> callback);

	void getCurrentlyAuthenticatedUser(AsyncCallback<String> callback);

	void getSensorDataForLocationIntervall(Location location,
			Timestamp fromDate, Timestamp toDate,
			AsyncCallback<ArrayList<SensorData>> callback);

}
